# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:张广勤
@Web site: https://www.tunan.wang
@Github:www.github.com
 
@File:xiang_quanwen1_0.py
@Time:2024/8/13 18:29

@Motto:不积跬步无以至千里，不积小流无以成江海！
"""


def read_gua_file(filename):
    all_guas = {}
    current_gua_key = None
    current_gua_value = []

    with open(filename, 'r', encoding='utf-8') as file:
        for line in file:
            line = line.strip()
            if line.startswith(('0', '1', '2', '3', '4', '5', '6', '7', '8', '9')):
                # 检测是否是一个新的卦的开头（基于序号的格式）
                if current_gua_key is not None and current_gua_value:
                    # 如果当前有卦的信息，则保存并重置
                    all_guas[current_gua_key] = current_gua_value
                    current_gua_value = []

                    # 提取序号后面的描述性文本作为键
                # 假设序号和描述性文本之间有空格分隔
                parts = line.split(None, 1)  # 使用None作为split的参数来按空白字符分割，但只分割一次
                if len(parts) > 1:
                    current_gua_key = parts[1]
                else:
                    # 如果没有找到描述性文本，则使用序号作为键（可能不是最佳实践）
                    current_gua_key = line

            elif line:
                # 如果行不为空，则添加到当前卦的值中
                current_gua_value.append(line)

                # 添加最后一个卦的信息（如果存在）
        if current_gua_key is not None and current_gua_value:
            all_guas[current_gua_key] = current_gua_value

    return all_guas


# 使用函数并打印结果
filename = 'yi/xiang_quanwen.txt'  # 假设这是包含易经卦象的文本文件
all_guas = read_gua_file(filename)
print(all_guas)

# 如果你想要检查或打印具体内容
for gua_key, gua_value in all_guas.items():
    # print(f"{gua_key}:\n{''.join(gua_value)}\n")
    print(f"{gua_key}:\n大象：{gua_value[0]}\n小象：{gua_value[1]}\n")